#!/bin/sh

# 定义一个函数,用于询问用户是否确认某个名字
yes_or_no() {
  # 输出询问用户的问题
  echo "Is your name $* ?"
  # 使用无限循环,直到用户输入有效的"yes"或"no"
  while true
  do
    # 提示用户输入答案
    echo -n "Enter yes or no: "
    # 读取用户的输入
    read x
    # 根据用户的输入返回相应的状态码
    case "$x" in
      y | yes ) return 0;; # 如果用户输入"yes"或"y",则返回0
      n | no )  return 1;; # 如果用户输入"no"或"n",则返回1
      * )       echo "Answer yes or no" # 如果用户输入其他内容,提示重新输入
    esac
  done
}

# 输出原始参数
echo "Original parameters are $*"

# 调用yes_or_no函数,传入第一个参数
if yes_or_no "$1"
then
  # 如果函数返回0(即用户确认了名字),则输出问候语
  echo "Hi $1, nice name"
else
  # 如果函数返回非0(即用户否认了名字),则输出其他信息
  echo "Never mind"
fi

# 脚本正常结束
exit 0
